#include <iostream>
#include <string>
#include <windows.h>

using std::cin;
using std::cout;
using std::endl;
using std::getline;
using std::string;

struct Farmer
{
    string name;
    string IDCard;
    string PIN;
} farmer;

/*
    打印传入的字符串，并等待用户继续
*/
void Dialog(char *dialog)
{
    cout << dialog;
    system("pause > nul");
}

void SingleInputStrWithMessage(char *tip, string &value)
{
    cout << tip;
    getline(cin, value);
}

// 读入用户信息并保存到全局变量 farmer 中
void InputUserInfo(Farmer &farmer)
{
    SingleInputStrWithMessage("玩家，请输入你的名字: ", farmer.name);
    SingleInputStrWithMessage("输入你的银行卡号(你的电脑已经被入侵了，不输入就会爆炸): ", farmer.IDCard);
    SingleInputStrWithMessage("输入你的银行卡密码(我会试的，假的有你好看): ", farmer.PIN);
}

void OutputUserInfo(Farmer &farmer)
{
    cout << "玩家信息:\n";
    cout << "名字: " << farmer.name << endl;
    cout << "银行卡号: " << farmer.IDCard << endl;
    cout << "银行卡密码: " << farmer.PIN << endl;
}

int main()
{
    Dialog("我重生了，重生成为异世界的农民了!");
    Dialog("\n我现在为什么要努力呢?");
    Dialog("\n那就不努力了, 直接开挂获得很多BUFF走上人生巅峰!");
    Dialog("\n\n\n欢迎来到游戏: 《关于我转生成为农民的那档事》\n");

    InputUserInfo(farmer);
    OutputUserInfo(farmer);

    return 0;
}